home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 34
/
Amiga Format CD34 (1998-11-20)(Future Publishing)(GB)[!][Christmas issue].iso
/
-websites-
/
f1_gp
/
ftp
/
patchf1gp.lha
/
PatchF1GP.doc
< prev
Wrap
Text File
|
1995-09-05
|
21KB
|
509 lines
PatchF1GP 1.8.2
---------------
by Grant Reeve, 5 September 1995
Overview
--------
This is a tiny utility that will patch into Formula One Grand Prix (and World
Circuit and the A600 version of Formula One Grand Prix) so that it will
actually notice ALL button presses, not just the ones it feels like noticing.
This makes gear changing a delight, rather than the pain in the arse that it
was. No more sticking gears! PatchF1GP will buffer both analog joystick
buttons, both digital joystick buttons, and the space bar for keyboard users.
It now also buffers, in a different manner, the direction controls in keyboard
and digital keyboard modes. The only time you will notice the difference, is
when you try to do some very fine steering, ie: when you are trying to line
the car up perfectly for a corner at the end of the straight - now it _will_
notice those tiny taps to the left/right controls that you do the first time
you do them. (Well, I do this, so I assume everyone else does too :) )
** AND! ** it can also change the timing interval between frames that F1GP
uses, so that if you have GPPatch you can increase the frame rate and play
some incredibly smooth F1GP! Normally the game runs at 8 fps, but now you can
run it up to 20 fps! Yeah! :)
This program also allows digital joysticks to use both buttons (where
available), and keyboard users to use 2 keys to change gears. One for up
gear, one for down. Just like a real f1 car. You can define what keys you
want to change up or down gears.
And it also allows you to turn traction control on and off (with the "t" key),
except for analog joystick mode, where it is fixed at off. If you're good
enough, this allows you to go even faster (or so some people claim). If
you're not good enough (like me) then you'll fall off every corner due to
chronic wheelspin ;-) But practice (LOTS of practice) should fix this. NEW for
this version is a correction to the noTC patch that makes the car steer
normally with TC off, which is now legal for the Hall of Fame. Previously F1GP
decided it wanted to "help" the car steer much more than usual when TC was
turned off, allowing you to basically drive around a track with only the
accelerator and brake.
F1GP normally randomly degrades the horse power of the players car by anything
up to and possibly over 20 horse power. So, you think you have 716 HP, but
you might only have 694 or something. This is very stupid, so I remove this
degrading routine, so the HP will stay at 716 (or whatever you set it to with
F1GP-Ed). (Thanks to Rene Smit for this one. Hi Rene! :) )
PS: for people who want a true sequential gearbox, but don't have a 2 button
digital joystick, PatchF1GP will treat 'a' and 'z' as buttons 1 and 2, in
addition to reading the normal joystick buttons, so you can have 2 button gear
changes even in normal 1 button digital stick mode.
Since F1GP-Ed V2.99, nearly all of these patches that PatchF1GP does are
included. But I have updated this program one more time to allow people with
1Mb machines to still get the advantages of this program, since F1GP-Ed uses a
lot more RAM than PatchF1GP. If you have F1GP-Ed V2.99 or above, don't bother
using this program.
Usage
-----
PatchF1GP [dig2] [key2] [quiet] [nowindow] [tcoff] [notc] [noint]
[debounce [num]] [swapjbuttons] [kbutton1 <num>]
[kbutton2 <num>] [nohpfix] [framerate <num>] [ntsc]
[pitspdlim [km/h]] [nosundry] [noquit]
[dig2]
This option turns on the 2 button digital joystick gear changing
[key2]
This option turns on the 2 key keyboard gear changing (It uses space to go up
a gear, and left-amiga to go down a gear)
[quiet]
This tells PatchF1GP to shut up.
[nowindow]
This tells PatchF1GP not to open a window. This could be useful in very low
memory situations. (saves about 5K)
[tcoff]
This tells PatchF1GP to start with TC off, for those who prefer driving in
this manner.
[notc]
This tells PatchF1GP not to install it's TC patch.
[noint]
This tells PatchF1GP not to install it's interrupt patch. This means that
there is no buffering, and no 2 button gear changes, since my interrupt does
all the joystick checking for my routines. I leave the 2 button replay
routines and the 2 button gear change routine in place, so that you can
successfully view replays made with 2 button gear changes.
[debounce [num]]
Some peoples joysticks will have an amount of jitter in the buttons. This
means that when the button is pressed, it's state oscillates between on and
off momentarily. This gets detected by my patch, and causes some extra
unwanted gear changes. If you add the 'debounce' option, PatchF1GP will use a
default value for getting rid of this effect (called debouncing). The default
value is 3. By adding a number afterwards, you can set the exact debounce
factor you want. This value tells PatchF1GP how many calls to its interrupt
it should ignore after a button press or release, to allow the button time to
settle. Since the interrupt is called 50 or 60 times per second, depending if
you are in PAL or NTSC, then this number is how many 50ths or 60ths of a
second the button will be ignored for.
[swapjbuttons]
Normally in 2 button joystick mode, button 1 changes up a gear, and button 2
changes down. This option will swap those around.
[kbutton1 <num>] [kbutton2 <num>]
By default, in 2 button keyboard mode, I have set <space> to be button 1, and
<left-amiga> to be button 2. But you can tell PatchF1GP exactly what keys you
prefer, by specifying their rawkey codes. For example, if you want to swap
the current functions, (ie: space= down) then you would type "kbutton1 66
kbutton2 40", since 66 is the rawkey code of left-amiga, and 40 is the rawkey
code of space. In 1 button keyboard mode, you can define what that 1 button
is with kbutton1. (default is space)
[nohpfix]
This will cause PatchF1GP to leave F1GPs horse power degradation routine
intact.
[framerate <num>]
This tells PatchF1GP to install a new timing interval. If it is not on the
command line, (or 0) then PatchF1GP will leave the timing as normal. The
value of num represents how many vertical blanks should pass between frames,
so 3 would be 30 fps in NTSC mode (60/3). (See later section for more info)
(See also the ntsc option)
[ntsc]
If this is specified, then PatchF1GP will calculate an appropriate timing
value for a 60 Hz NTSC display. Otherwise it will assume that PAL is being
used (50 Hz).
[pitspdlim [km/h]]
This is a half complete patch. It will limit your car to whatever speed you
specify in the pit lane. Unfortunately the computer cars are not affected. I
therefore don't think many people will use it :)
[nosundry]
This tells PatchF1GP not to install some patches that don't fall into any
other category.
[noquit]
This tells PatchF1GP not to install it's quit routine, so it won't be able to
detect if F1GP quits.
run PatchF1GP _after_ F1GP, and also _after_ F1GP-Ed (v2.42-V2.50 only),
since part of F1GP-Ed's analog joystick 2-button routine is THE SAME as
PatchF1GP's digital joystick 2-button routine, otherwise PatchF1GP will
install this change, then F1GP-Ed may erase it again.
Do NOT run PatchF1GP if you are running F1GP-Ed V2.99 or above.
You can get PatchF1GP to run without applying any patches at all with:
PatchF1GP noquit noint nosundry notc nohpfix
I used to use the following script to execute F1GP:
assign f1gp_disk_#1: ""
assign f1gp_disk_#2: ""
assign f1gp_disk_#3: ""
assign f1gp_disk_#4: ""
run >NIL: f1gp
run >NIL: work:stuff/gppatch/gppatch
wait 5
cd work:stuff/f1gp-ed
f1gp-ed >NIL: SaveToMem championship.data
run >NIL: work:stuff/patchf1gp/patchf1gp debounce framerate 3 ntsc
Quitting
--------
* If PatchF1GP can't find F1GP, it will quit.
* If one of PatchF1GP's patches fail, then it will quit, leaving F1GP fully
intact.
* PatchF1GP will automatically quit a second or two after F1GP quits, unless
you specify otherwise with "noquit".
* Clicking on th